home *** CD-ROM | disk | FTP | other *** search
/ Maximum CD 2000 November / Maximum CD 2000 Nov.iso / AofE-Conquerers / age2xtrial.exe / CABFILE / MSGAME.CAB / Data / gamedata_x1.drs / Unnamed File 000015.bina < prev    next >
Text File  |  2000-07-18  |  21KB  |  1,044 lines

  1. ;UPGRADES & BUILDS RELATED TO OTHER PLAYERS
  2.  
  3. #load-if-not-defined DEFEND-WONDER
  4. #load-if-not-defined WONDER-RACE
  5. #load-if-defined DIFFICULTY-MODERATE
  6. (load-random
  7.     20    "petersen dip bully"
  8.     5    "petersen dip boomer"
  9.     5    "petersen dip feeder"
  10. )
  11.  
  12. #else
  13.  
  14. (load-random
  15.     10    "petersen dip bully"
  16.     10    "petersen dip boomer"
  17.     10    "petersen dip feeder"
  18. )
  19. #end-if
  20. #end-if
  21. #end-if
  22.  
  23. #load-if-defined WONDER-RACE
  24. (load-random
  25.     25    "petersen dip feeder"
  26. )
  27. #end-if
  28.  
  29. #load-if-defined DEFEND-WONDER
  30.  
  31. (load-random
  32.     15    "petersen dip feeder"
  33. )
  34.  
  35. #end-if
  36.  
  37. (defrule
  38.     (true)
  39. =>
  40.     (set-goal make-villagers NO)
  41.     (set-goal 24 NO)
  42. )
  43. ;**************************************
  44. ;TRIBUTE TO ONE ANOTHER
  45. (defrule
  46.     (wood-amount > 350)
  47.     (taunt-detected any-computer-ally 4)
  48.     (not (goal resource-needed WOOD) )
  49. =>
  50.     (release-escrow wood)
  51.     (tribute-to-player this-any-ally wood 100)
  52.     (acknowledge-taunt this-any-ally 4)
  53.     (chat-local-to-self "Tribute wood")
  54. )
  55.  
  56. (defrule
  57.     (wood-amount > 100)
  58.     (taunt-detected any-human-ally 4)
  59. =>
  60.     (release-escrow wood)
  61.     (tribute-to-player this-any-ally wood 100)
  62.     (acknowledge-taunt this-any-ally 4)
  63.     (chat-local-to-self "Tribute wood")
  64. )
  65.  
  66. (defrule
  67.     (taunt-detected any-ally 4)
  68. =>
  69.     (acknowledge-taunt any-ally 4)
  70. )
  71.  
  72. (defrule
  73.     (food-amount > 200)
  74.     (taunt-detected any-computer-ally 3)
  75.     (not (goal resource-needed FOOD) )
  76. =>
  77.     (release-escrow food)
  78.     (tribute-to-player this-any-ally food 100)
  79.     (acknowledge-taunt this-any-ally 3)
  80.     (chat-local-to-self "Tribute food")
  81. )
  82.  
  83. (defrule
  84.     (food-amount > 200)
  85.     (taunt-detected any-human-ally 3)
  86. =>
  87.     (release-escrow food)
  88.     (tribute-to-player this-any-ally food 100)
  89.     (acknowledge-taunt this-any-ally 3)
  90.     (chat-local-to-self "Tribute food")
  91. )
  92.  
  93. (defrule
  94.     (taunt-detected any-ally 3)
  95. =>
  96.     (acknowledge-taunt any-ally 3)
  97. )
  98.  
  99. (defrule
  100.     (gold-amount > 350)
  101.     (taunt-detected any-computer-ally 5)
  102.     (not (goal resource-needed GOLD) )
  103. =>
  104.     (release-escrow gold)
  105.     (tribute-to-player this-any-ally gold 100)
  106.     (acknowledge-taunt this-any-ally 5)
  107.     (chat-local-to-self "Tribute gold")
  108. )
  109.  
  110. (defrule
  111.     (gold-amount > 200)
  112.     (taunt-detected any-human-ally 5)
  113. =>
  114.     (release-escrow gold)
  115.     (tribute-to-player this-any-ally gold 100)
  116.     (acknowledge-taunt this-any-ally 5)
  117.     (chat-local-to-self "Tribute gold")
  118. )
  119.  
  120. (defrule
  121.     (taunt-detected any-ally 5)
  122. =>
  123.     (acknowledge-taunt any-ally 5)
  124. )
  125.  
  126. (defrule
  127.     (stone-amount > 350)
  128.     (taunt-detected any-computer-ally 6)
  129.     (not (goal resource-needed STONE) )
  130. =>
  131.     (release-escrow stone)
  132.     (tribute-to-player this-any-ally stone 100)
  133.     (acknowledge-taunt this-any-ally 6)
  134. )
  135.  
  136. (defrule
  137.     (stone-amount > 200)
  138.     (taunt-detected any-human-ally 6)
  139. =>
  140.     (release-escrow stone)
  141.     (tribute-to-player this-any-ally stone 100)
  142.     (acknowledge-taunt this-any-ally 6)
  143. )
  144.  
  145. (defrule
  146.     (taunt-detected any-ally 6)
  147. =>
  148.     (acknowledge-taunt any-ally 6)
  149. )
  150.  
  151. ;**************************************
  152. ;ATTACK NOW
  153.     (defrule
  154.         (taunt-detected any-ally 31)
  155.         (current-age == feudal-age)
  156.     =>
  157.         (set-strategic-number sn-maximum-town-size feudal-town-size)
  158.     )
  159.  
  160.     (defrule
  161.         (taunt-detected any-ally 31)
  162.         (current-age == castle-age)
  163.     =>
  164.         (set-strategic-number sn-maximum-town-size castle-town-size)
  165.     )
  166.  
  167.     (defrule
  168.         (taunt-detected any-ally 31)
  169.         (current-age == imperial-age)
  170.     =>
  171.         (set-strategic-number sn-maximum-town-size imperial-town-size)
  172.     )
  173.  
  174.     (defrule
  175.         (taunt-detected any-ally 31)
  176.     =>
  177.         (set-strategic-number sn-percent-attack-soldiers 100)
  178.         (set-strategic-number sn-percent-attack-boats 100)
  179.         (acknowledge-taunt this-any-ally 31)
  180.         (attack-now)
  181.         (chat-to-player-using-id this-any-ally 22153)
  182.             ;"39 At once, sire!")
  183.         (set-goal attack-control NO)
  184.         (disable-timer t-attackgroup)
  185.         (enable-timer t-attackgroup 1)
  186.     )
  187.  
  188. ;**************************************
  189. ;STOP BUILDING EXTRA VILLAGERS
  190.  
  191. (defrule
  192.     (taunt-detected any-ally 32)
  193.     (goal make-villagers YES)
  194. =>
  195.     (acknowledge-taunt this-any-ally 32)
  196.     (set-goal make-villagers NO)
  197.     (chat-to-player-using-id this-any-ally 22154)
  198.         ;"39 I shall train fewer villagers, Sire!")
  199. )
  200.  
  201. ;**************************************
  202. ;GO ECONOMY
  203.  
  204. (defrule
  205.     (taunt-detected any-ally 33)
  206.     (goal make-villagers NO)
  207. =>
  208.     (acknowledge-taunt this-any-ally 33)
  209.     (set-goal make-villagers YES)
  210.     (chat-to-player-using-id this-any-ally 22157)
  211.         ;"39 I shall train as many villagers as possible, Sire!")
  212. )
  213.  
  214. (defrule
  215.     (current-age == dark-age)
  216.     (goal make-villagers YES)
  217.     (civilian-population < civ-feudal)
  218.     (can-train villager)
  219. =>
  220.     (train villager)
  221. )
  222.  
  223. (defrule
  224.     (current-age == feudal-age)
  225.     (goal make-villagers YES)
  226.     (civilian-population < civ-castle)
  227.     (can-train villager)
  228. =>
  229.     (train villager)
  230. )
  231.  
  232. (defrule
  233.     (current-age >= castle-age)
  234.     (goal make-villagers YES)
  235.     (civilian-population < deathmatch-unit-max)
  236.     (can-train villager)
  237. =>
  238.     (train villager)
  239. )
  240.  
  241. ;**************************************
  242. ;GO NAVY
  243. (defrule
  244.     (taunt-detected any-ally 34)
  245.     (goal 1 0)
  246. =>
  247.     (acknowledge-taunt this-any-ally 34)
  248.     (chat-to-player-using-id this-any-ally 22158)
  249.         ;"39 But Sire, this map is dry as a bone! Surely thou jesteth?"
  250. )
  251.  
  252. (defrule
  253.     (taunt-detected any-ally 34)
  254.     (or
  255.         (goal 1 1)
  256.         (goal 1 10)
  257.     )
  258. =>
  259.     (set-goal sea-owner YES)
  260.     (acknowledge-taunt this-any-ally 34)
  261.     (chat-to-player-using-id this-any-ally 22153)
  262.         ;"39 At once, Sire!"
  263. )
  264.  
  265. ;**************************************
  266. ;GO LAND
  267. (defrule
  268.     (taunt-detected any-ally 35)
  269.     (goal 1 0)
  270. =>
  271.     (acknowledge-taunt this-any-ally 35)
  272.     (chat-to-player-using-id this-any-ally 22159)
  273.         ;"39 Er ... sire. I had planned as much!")
  274. )
  275.  
  276. (defrule
  277.     (taunt-detected any-ally 35)
  278.     (or
  279.         (goal 1 1)
  280.         (goal 1 10)
  281.     )
  282. =>
  283.     (set-goal sea-owner NOTICE)
  284.     (acknowledge-taunt this-any-ally 35)
  285.     (chat-to-player-using-id this-any-ally 22153)
  286.         ;"39 At once, Sire!"
  287. )
  288.  
  289.  
  290. ;**************************************
  291. ;DON'T ATTACK YET
  292.     (defrule
  293.         (taunt-detected any-ally 36)
  294.     =>
  295.         (set-goal attack-enabled NO)
  296.         (disable-timer t-attackgroup)
  297.     )
  298.  
  299.     (defrule
  300.         (taunt-detected any-ally 36)
  301.     =>
  302.         (set-strategic-number sn-maximum-town-size 15)
  303.         (acknowledge-taunt this-any-ally 36)
  304.         (chat-to-player-using-id this-any-ally 22160)
  305.             ;"39 Yes sire! I shall not attack until thou thyself give the word!"
  306.     )
  307.  
  308. ;**************************************
  309. ;BUILD A WONDER
  310.     (defrule
  311.         (taunt-detected any-ally 37)
  312.         (current-age < imperial-age)
  313.     =>
  314.         (acknowledge-taunt this-any-ally 37)
  315.         (chat-to-player-using-id this-any-ally 22162)
  316.             ;"39 Nay, sire! I am not Imperial yet!")
  317.     )
  318.  
  319.     (defrule
  320.         (taunt-detected any-ally 37)
  321.         (current-age == imperial-age)
  322.     =>
  323.         (set-goal upgrade-conflict NOTICE)
  324.         (set-goal wonder-attempt POSSIBLE)
  325.         (disable-timer t-ageup)
  326.         (acknowledge-taunt this-any-ally 37)
  327.         (chat-to-player-using-id every-computer 22410)    ;200
  328.         (chat-to-player-using-id this-any-ally 22161)
  329.             ;"39 At once, sire! I shall begin the Wonder as soon as possible!")
  330.     )
  331.  
  332. ;**************************************
  333. ;GIVE ME YOUR SPARE STUFF
  334.  
  335. ;if it's impossible
  336. (defrule
  337.     (taunt-detected any-ally 38)
  338.     (building-type-count market < 1)
  339. =>
  340.     (acknowledge-taunt this-any-ally 38)
  341.     (chat-to-player-using-id this-any-ally 22164)
  342.         ;"39 But sire! I have no market!"
  343. )
  344.  
  345. ;tribute away our wood
  346. (defrule
  347.     (taunt-detected any-ally 38)
  348.     (nor 
  349.         (goal resource-supp WOOD-FOOD)
  350.         (or
  351.             (goal resource-supp WOOD-GOLD)
  352.             (goal resource-supp WOOD-STONE)
  353.         )
  354.     )
  355.     (wood-amount > 700)
  356. =>
  357.     (release-escrow wood)
  358.     (tribute-to-player this-any-ally wood 500)
  359.     (set-goal 24 YES)
  360. )
  361.  
  362. (defrule
  363.     (taunt-detected any-ally 38)
  364.     (or
  365.         (and
  366.             (goal resource-supp WOOD-FOOD)
  367.             (wood-amount > 1600)
  368.         )
  369.         (or
  370.             (and
  371.                 (goal resource-supp WOOD-GOLD)
  372.                 (wood-amount > 1025)
  373.             )
  374.             (and
  375.                 (goal resource-supp WOOD-STONE)
  376.                 (wood-amount > 900)
  377.             )
  378.         )
  379.     )
  380. =>
  381.     (release-escrow wood)
  382.     (tribute-to-player this-any-ally wood 500)
  383.     (set-goal 24 YES)
  384. )
  385.  
  386. ;tribute away our food
  387.  
  388. (defrule
  389.     (taunt-detected any-ally 38)
  390.     (nor 
  391.         (or
  392.             (goal resource-supp FOOD-ONLY)
  393.             (goal resource-supp WOOD-FOOD)
  394.         )
  395.         (or
  396.             (goal resource-supp FOOD-GOLD)
  397.             (goal resource-supp FOOD-STONE)
  398.         )
  399.     )
  400.     (food-amount > 700)
  401. =>
  402.     (release-escrow food)
  403.     (tribute-to-player this-any-ally food 500)
  404.     (set-goal 24 YES)
  405. )
  406.  
  407. (defrule
  408.     (taunt-detected any-ally 38)
  409.     (or
  410.         (and
  411.             (goal resource-supp FOOD-ONLY)
  412.             (food-amount > 750)
  413.         )
  414.         (and
  415.             (goal resource-supp WOOD-FOOD)
  416.             (food-amount > 1500)
  417.         )
  418.     )
  419. =>
  420.     (release-escrow food)
  421.     (tribute-to-player this-any-ally food 500)
  422.     (set-goal 24 YES)
  423. )
  424.  
  425. (defrule
  426.     (taunt-detected any-ally 38)
  427.     (or
  428.         (and
  429.             (goal resource-supp FOOD-GOLD)
  430.             (food-amount > 2100)
  431.         )
  432.         (and
  433.             (goal resource-supp FOOD-STONE)
  434.             (food-amount > 1000)
  435.         )
  436.     )
  437. =>
  438.     (release-escrow food)
  439.     (tribute-to-player this-any-ally food 500)
  440.     (set-goal 24 YES)
  441. )
  442.  
  443. ;give away the gold
  444. (defrule
  445.     (taunt-detected any-ally 38)
  446.     (nor 
  447.         (goal resource-supp GOLD-ONLY)
  448.         (or
  449.             (goal resource-supp WOOD-GOLD)
  450.             (goal resource-supp FOOD-GOLD)
  451.         )
  452.     )
  453.     (gold-amount > 700)
  454. =>
  455.     (release-escrow gold)
  456.     (tribute-to-player this-any-ally food 500)
  457.     (set-goal 24 YES)
  458. )
  459.  
  460. (defrule
  461.     (taunt-detected any-ally 38)
  462.     (or
  463.         (and
  464.             (goal resource-supp GOLD-ONLY)
  465.             (gold-amount > 975)
  466.         )
  467.         (or
  468.             (and
  469.                 (goal resource-supp WOOD-GOLD)
  470.                 (gold-amount > 1000)
  471.             )
  472.             (and
  473.                 (goal resource-supp FOOD-GOLD)
  474.                 (gold-amount > 1700)
  475.             )
  476.         )
  477.     )
  478. =>
  479.     (release-escrow gold)
  480.     (tribute-to-player this-any-ally gold 500)
  481.     (set-goal 24 YES)
  482. )
  483.  
  484. ;give away the stone
  485. (defrule
  486.     (taunt-detected any-ally 38)
  487.     (nor 
  488.         (goal resource-supp WOOD-STONE)
  489.         (goal resource-supp FOOD-STONE) 
  490.     )
  491.     (stone-amount > 700)
  492. =>
  493.     (release-escrow stone)
  494.     (tribute-to-player this-any-ally stone 500)
  495.     (set-goal 24 YES)
  496. )
  497.  
  498. (defrule
  499.     (taunt-detected any-ally 38)
  500.     (or
  501.         (and
  502.             (goal resource-supp WOOD-STONE)
  503.             (gold-amount > 900)
  504.         )
  505.         (and
  506.             (goal resource-supp FOOD-STONE)
  507.             (gold-amount > 850)
  508.         )
  509.     )
  510. =>
  511.     (release-escrow stone)
  512.     (tribute-to-player this-any-ally stone 500)
  513.     (set-goal 24 YES)
  514. )
  515.  
  516. ;finish it off
  517. (defrule
  518.     (taunt-detected any-ally 38)
  519.     (goal 24 NO)
  520. =>
  521.     (set-goal 24 NO)
  522.     (acknowledge-taunt this-any-ally 38)
  523.     (chat-to-player-using-id this-any-ally 22163)
  524.         ;"39 I regret, sire, that I have nothing to spare."
  525. )
  526.  
  527. (defrule
  528.     (taunt-detected any-ally 38)
  529.     (goal 24 YES)
  530. =>
  531.     (set-goal 24 NOTICE)
  532. )
  533.  
  534. (defrule
  535.     (taunt-detected any-ally 38)
  536.     (goal 24 NOTICE)
  537. =>
  538.     (acknowledge-taunt this-any-ally 38)
  539.     (set-goal 24 NO)
  540. )
  541.  
  542. ;**************************************
  543. ;WHAT AGE ARE YOU? (taunt 42)
  544.  
  545. (defrule
  546.     (taunt-detected any-ally 42)
  547.     (current-age == dark-age)
  548. =>
  549.     (acknowledge-taunt this-any-ally 42)
  550.     (chat-to-player-using-id this-any-ally 22165)
  551.         ;"39 Alas, sire. I languish in the Dark Age."
  552. )
  553.  
  554. (defrule
  555.     (taunt-detected any-ally 42)
  556.     (current-age == feudal-age)
  557. =>
  558.     (acknowledge-taunt this-any-ally 42)
  559.     (chat-to-player-using-id this-any-ally 22166)
  560.         ; "39 Sire, I have attained unto the Feudal Age."
  561. )
  562.  
  563. (defrule
  564.     (taunt-detected any-ally 42)
  565.     (current-age == castle-age)
  566. =>
  567.     (acknowledge-taunt this-any-ally 42)
  568.     (chat-to-player-using-id this-any-ally 22167)
  569.         ; "39 Sire, I have attained unto the Castle Age!"
  570. )
  571.  
  572. (defrule
  573.     (taunt-detected any-ally 42)
  574.     (current-age == imperial-age)
  575. =>
  576.     (acknowledge-taunt this-any-ally 42)
  577.     (chat-to-player-using-id this-any-ally 22168)
  578.         ; "39 Ah, sire! I am in the glorious Imperial Age"
  579. )
  580.  
  581. ;**************************************
  582. ;BASIC DIPLOMACY
  583. #load-if-not-defined TEAMS-LOCKED
  584. (defrule
  585.     (true)
  586. =>
  587.     (disable-timer t-chathelp)
  588.     (enable-timer t-chathelp 120)
  589.     (disable-self)
  590. )
  591.  
  592. (defrule
  593.     (current-age >= feudal-age)
  594.     (players-stance any-computer-ally neutral)
  595. =>
  596.     (set-stance this-any-computer-ally neutral)
  597. )
  598.  
  599. (defrule
  600.     (current-age >= feudal-age)
  601.     (players-stance any-computer-ally enemy)
  602. =>
  603.     (set-stance this-any-computer-ally enemy)
  604. )
  605.  
  606. (defrule
  607.     (current-age >= feudal-age)
  608.     (players-stance any-computer-neutral ally)
  609. =>
  610.     (set-stance this-any-computer-neutral ally)
  611. )
  612.  
  613. (defrule
  614.     (current-age >= feudal-age)
  615.     (players-stance any-computer-neutral enemy)
  616. =>
  617.     (set-stance this-any-computer-neutral enemy)
  618. )
  619.  
  620. (defrule
  621.     (current-age >= feudal-age)
  622.     (players-stance any-computer-enemy ally)
  623. =>
  624.     (set-stance this-any-computer-enemy ally)
  625. )
  626.  
  627. (defrule
  628.     (current-age >= feudal-age)
  629.     (players-stance any-computer-enemy neutral)
  630. =>
  631.     (set-stance this-any-computer-enemy neutral)
  632. )
  633.  
  634. ;*******************************************************
  635. ;is there more than one human player?
  636. (defrule
  637.     (player-human 1)
  638.     (or
  639.         (or
  640.             (player-human 2)
  641.             (player-human 3)
  642.         )
  643.         (or
  644.             (or
  645.                 (or
  646.                     (player-human 4)
  647.                     (player-human 5)
  648.                 )
  649.                 (or
  650.                     (player-human 6)
  651.                     (player-human 7)
  652.                 )
  653.             )
  654.             (player-human 8)
  655.         )
  656.     )
  657. =>
  658.     (set-goal get-mad YES)
  659.     (disable-self)
  660. )
  661.  
  662. (defrule
  663.     (player-human 2)
  664.     (or
  665.         (or
  666.             (player-human 1)
  667.             (player-human 3)
  668.         )
  669.         (or
  670.             (or
  671.                 (or
  672.                     (player-human 4)
  673.                     (player-human 5)
  674.                 )
  675.                 (or
  676.                     (player-human 6)
  677.                     (player-human 7)
  678.                 )
  679.             )
  680.             (player-human 8)
  681.         )
  682.     )
  683. =>
  684.     (set-goal get-mad YES)
  685.     (disable-self)
  686. )
  687.  
  688. (defrule
  689.     (player-human 3)
  690.     (or
  691.         (or
  692.             (player-human 2)
  693.             (player-human 1)
  694.         )
  695.         (or
  696.             (or
  697.                 (or
  698.                     (player-human 4)
  699.                     (player-human 5)
  700.                 )
  701.                 (or
  702.                     (player-human 6)
  703.                     (player-human 7)
  704.                 )
  705.             )
  706.             (player-human 8)
  707.         )
  708.     )
  709. =>
  710.     (set-goal get-mad YES)
  711.     (disable-self)
  712. )
  713.  
  714. (defrule
  715.     (player-human 4)
  716.     (or
  717.         (or
  718.             (player-human 2)
  719.             (player-human 3)
  720.         )
  721.         (or
  722.             (or
  723.                 (or
  724.                     (player-human 1)
  725.                     (player-human 5)
  726.                 )
  727.                 (or
  728.                     (player-human 6)
  729.                     (player-human 7)
  730.                 )
  731.             )
  732.             (player-human 8)
  733.         )
  734.     )
  735. =>
  736.     (set-goal get-mad YES)
  737.     (disable-self)
  738. )
  739.  
  740. (defrule
  741.     (player-human 5)
  742.     (or
  743.         (or
  744.             (player-human 2)
  745.             (player-human 3)
  746.         )
  747.         (or
  748.             (or
  749.                 (or
  750.                     (player-human 4)
  751.                     (player-human 1)
  752.                 )
  753.                 (or
  754.                     (player-human 6)
  755.                     (player-human 7)
  756.                 )
  757.             )
  758.             (player-human 8)
  759.         )
  760.     )
  761. =>
  762.     (set-goal get-mad YES)
  763.     (disable-self)
  764. )
  765.  
  766. (defrule
  767.     (player-human 6)
  768.     (or
  769.         (or
  770.             (player-human 2)
  771.             (player-human 3)
  772.         )
  773.         (or
  774.             (or
  775.                 (or
  776.                     (player-human 4)
  777.                     (player-human 5)
  778.                 )
  779.                 (or
  780.                     (player-human 1)
  781.                     (player-human 7)
  782.                 )
  783.             )
  784.             (player-human 8)
  785.         )
  786.     )
  787. =>
  788.     (set-goal get-mad YES)
  789.     (disable-self)
  790. )
  791.  
  792. (defrule
  793.     (player-human 7)
  794.     (or
  795.         (or
  796.             (player-human 2)
  797.             (player-human 3)
  798.         )
  799.         (or
  800.             (or
  801.                 (or
  802.                     (player-human 4)
  803.                     (player-human 5)
  804.                 )
  805.                 (or
  806.                     (player-human 6)
  807.                     (player-human 1)
  808.                 )
  809.             )
  810.             (player-human 8)
  811.         )
  812.     )
  813. =>
  814.     (set-goal get-mad YES)
  815.     (disable-self)
  816. )
  817. (defrule
  818.     (player-human 8)
  819.     (or
  820.         (or
  821.             (player-human 2)
  822.             (player-human 3)
  823.         )
  824.         (or
  825.             (or
  826.                 (or
  827.                     (player-human 4)
  828.                     (player-human 5)
  829.                 )
  830.                 (or
  831.                     (player-human 6)
  832.                     (player-human 1)
  833.                 )
  834.             )
  835.             (player-human 1)
  836.         )
  837.     )
  838. =>
  839.     (set-goal get-mad YES)
  840.     (disable-self)
  841. )
  842.  
  843. ;*******************************************************
  844. ;BASIC DIPLOMACY VS. HUMANS
  845. ;if the human player doesn't go neutral at our request
  846. (defrule
  847.     (goal get-mad NO)
  848.     (timer-triggered t-chathelp)
  849.     (players-stance any-human-neutral enemy)
  850.     (or
  851.         (difficulty <= moderate)
  852.         (current-age > dark-age)
  853.     )
  854. =>
  855.     (chat-to-player-using-id this-any-human-neutral 22027)
  856.         ;"41 I am Neutral to thee. Set thy diplomacy to Neutral to me."
  857.     (disable-timer t-chathelp)
  858.     (enable-timer t-chathelp 120)
  859.     (set-goal get-mad ANGRY)
  860. )
  861.  
  862. (defrule
  863.     (or
  864.         (goal get-mad ANGRY) 
  865.         (or
  866.             (goal get-mad ANGRIER)
  867.             (goal get-mad ANGRIEST)
  868.         )
  869.     )
  870.     (or
  871.         (players-stance any-human-neutral neutral)
  872.         (players-stance any-human-neutral ally)
  873.     )
  874. =>
  875.     (chat-to-player-using-id this-any-human-neutral 22028)
  876.     (chat-to-player-using-id this-any-human-neutral 22029)
  877.         ;"39 Thou art wise to be a potential friend."
  878.         ;"Thou shalt hear from me again."
  879.     (disable-timer t-chathelp)
  880.     (enable-timer t-chathelp 120)
  881.     (set-goal get-mad NO)
  882. )
  883.  
  884. (defrule
  885.     (goal get-mad ANGRY)
  886.     (timer-triggered t-chathelp)
  887.     (players-stance any-human-neutral enemy)
  888. =>
  889.     (set-goal get-mad ANGRIER)
  890.     (disable-timer t-chathelp)
  891.     (enable-timer t-chathelp 120)
  892.     (chat-to-player-using-id this-any-human-neutral 22030)
  893.     (chat-to-player-using-id this-any-human-neutral 22031)
  894.         ;"41 Thou hast ignored my generous invitation. I am merciful, and give you another chance."
  895.         ;"Set thy diplomacy to Neutral to me. Now."
  896. )
  897.  
  898. (defrule
  899.     (goal get-mad ANGRIER)
  900.     (timer-triggered t-chathelp)
  901.     (players-stance any-human-neutral enemy)
  902. =>
  903.     (set-goal get-mad ANGRIEST)
  904.     (disable-timer t-chathelp)
  905.     (enable-timer t-chathelp 120)
  906.     (chat-to-player-using-id this-any-human-neutral 22032)
  907.     (chat-to-player-using-id this-any-human-neutral 22033)
  908.         ;"41 How unwise. Thou art still hostile to me. Set to Neutral at once versus me!"
  909.         ;"This is thy last opportunity."
  910. )
  911.  
  912. (defrule
  913.     (goal get-mad ANGRIEST)
  914.     (timer-triggered t-chathelp)
  915.     (players-stance any-human-neutral enemy)
  916. =>
  917.     (set-goal get-mad YES)
  918.     (chat-to-player-using-id this-any-human-neutral 22025)
  919.     (chat-to-player-using-id this-any-human-neutral 22026)
  920.         ;"40 So! Thou has chosen to defy me." 
  921.         ;"It shall be war to the knife!"
  922.     (set-stance this-any-human-neutral enemy)
  923.     (set-stance every-computer ally)
  924.     (disable-timer t-chathelp)
  925.     (disable-self)
  926. )
  927.  
  928. ;when an ally turns on us
  929. (defrule
  930.     (goal get-mad NO)
  931.     (or
  932.         (players-stance any-human-ally neutral)
  933.         (players-stance any-human-ally enemy)
  934.     )
  935. =>
  936.     (chat-to-player-using-id this-any-human-ally 22147)
  937.         ;"39 I am thine Ally, friend. Pray set thyself to Ally, too."
  938.     (disable-timer t-chathelp)
  939.     (enable-timer t-chathelp 120)
  940.     (set-goal get-mad ANGRY)
  941. )
  942.  
  943. (defrule
  944.     (or
  945.         (goal get-mad ANGRY) 
  946.         (or
  947.             (goal get-mad ANGRIER)
  948.             (goal get-mad ANGRIEST)
  949.         )
  950.     )
  951.     (players-stance any-human-ally ally)
  952. =>
  953.     (chat-to-player-using-id this-any-human-ally 22148)
  954.         ;"39 Thou art gracious to remain mine friend."
  955.     (disable-timer t-chathelp)
  956.     (enable-timer t-chathelp 120)
  957.     (set-goal get-mad NO)
  958. )
  959.  
  960. (defrule
  961.     (goal get-mad ANGRY)
  962.     (timer-triggered t-chathelp)
  963.     (or
  964.         (players-stance any-human-ally neutral)
  965.         (players-stance any-human-ally enemy)
  966.     )
  967. =>
  968.     (set-goal get-mad ANGRIER)
  969.     (disable-timer t-chathelp)
  970.     (enable-timer t-chathelp 120)
  971.     (chat-to-player-using-id this-any-human-ally 22149)
  972.     (chat-to-player-using-id this-any-human-ally 22150)
  973.         ;"41 What evil is this? Thou art still not friendly?!"
  974.         ;"Perhaps thou didst not understand? Be mine Ally, for I am thine."
  975. )
  976.  
  977. (defrule
  978.     (goal get-mad ANGRIER)
  979.     (timer-triggered t-chathelp)
  980.     (or
  981.         (players-stance any-human-ally neutral)
  982.         (players-stance any-human-ally enemy)
  983.     )
  984. =>
  985.     (set-goal get-mad ANGRIEST)
  986.     (disable-timer t-chathelp)
  987.     (enable-timer t-chathelp 120)
  988.     (chat-to-player-using-id this-any-human-ally 22151)
  989.     (chat-to-player-using-id this-any-human-ally 22152)
  990.         ;"41 Oh, falsest of friends. This is thy last chance!"
  991.         ;"If thou wilt have me for Ally, thou must do likewise."
  992. )
  993.  
  994. (defrule
  995.     (goal get-mad ANGRIEST)
  996.     (timer-triggered t-chathelp)
  997.     (or
  998.         (players-stance any-human-ally neutral)
  999.         (players-stance any-human-ally enemy)
  1000.     )
  1001. =>
  1002.     (set-goal get-mad YES)
  1003.     (chat-to-player-using-id this-any-human-ally 22025)
  1004.     (chat-to-player-using-id this-any-human-ally 22026)
  1005.         ;"40 So! Thou has chosen to defy me." 
  1006.         ;"It shall be war to the knife!"
  1007.     (set-stance this-any-human-ally enemy)
  1008.     (set-stance every-computer ally)
  1009.     (disable-timer t-chathelp)
  1010.     (disable-self)
  1011. )
  1012.  
  1013. ;end result -- go hostile!!
  1014. (defrule
  1015.     (stance-toward any-human neutral)
  1016.     (nor
  1017.         (player-in-game any-computer-ally)
  1018.         (or
  1019.             (player-in-game any-computer-enemy)
  1020.             (player-in-game any-computer-neutral)
  1021.         )
  1022.     )
  1023. =>
  1024.     (set-goal get-mad YES)
  1025.     (chat-to-player-using-id this-any-human 22034)
  1026.     (chat-to-player-using-id this-any-human 22035)
  1027.         ;"40 I have thought better of mine previous merciful plan."
  1028.         ;"Thou must be exterminated, and I shall forever be thine foe."
  1029.     (set-stance this-any-human enemy)
  1030.     (set-stance every-computer ally)
  1031.     (disable-timer t-chathelp)
  1032.     (disable-self)
  1033. )
  1034.  
  1035. (defrule
  1036.     (goal get-mad YES)
  1037. =>
  1038.     (set-goal personality 10)
  1039.     (set-stance every-human enemy)
  1040.     (set-stance every-computer ally)
  1041.     (disable-self)
  1042. )
  1043.  
  1044. #end-if